Поле со значением NULL является полем без значения.
Если поле в таблице необязательно, можно вставить новую запись или обновить запись, не добавляя значения в это поле. Тогда поле сохраняется со значением NULL.
Невозможно проверить значение NULL с помощью операторов сравнения, таких как =, <, or <>.
Вместо этого нам придется использовать операторы IS NULL и IS NOT NULL.
SELECT column_names
FROM table_name
WHERE column_name IS NULL
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL
Ниже приведена выборка из таблицы "Customers" образца базы данных Northwind:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Берлин | 12209 | Германия |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
4 | Почти Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbkop | Christina Berglund | Berguvsvagen 8 | Lulea | S-958 22 | Sweden |
Оператор IS NULL используется для проверки пустых значений (значений NULL).
В следующем SQL перечислены все клиенты со значением NULL в поле "Address":
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NULL
Оператор IS NOT NULL используется для проверки непустых значений (NOT NULL).
В следующем SQL перечислены все клиенты со значением в поле "Address":
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NOT NULL